<?php
namespace app\app\controller\v1;
use think\Db;
use app\app\util\OnlineUtils;
class CollectionController extends  BaseController{

    /**
     * @return array
     * 添加收藏
     */
    public function CollectionLine()
    {
        $user_id = OnlineUtils::getUserIdBySid();
        $line_id = input('post.line_id');
        $line = Db::name('line')->where(['status'=>1])->find($line_id);
        //添加收藏前判断是否已经收藏
        $line_collection =  Db::name('collection')
            ->where(['status'=>1,'line_id'=>$line_id,'user_id'=>$user_id])->find();
        if( !$line ){
            return json_code('402','线路参数错误');
        }
        //如果存在就该用户收藏过 如果不存在就没有收藏
        if( $line_collection ){
            $del = Db::name('collection')->where(['line_id'=>$line_id,'user_id'=>$user_id])->delete();
            if(  $del ){
                return json_code('200','取消收藏成功');
            }else{
                return json_code('402','取消收藏失败');
            }
        }else{
            $data = array('user_id'=>$user_id,'line_id'=>$line_id,'created_at'=>time());
            $insert = Db::name('collection')->insertGetId($data);
            if(  $insert ){
                return json_code('200','收藏成功',$insert);
            }else{
                return json_code('402','收藏失败');
            }
        }

    }

//    /**
//     * @return array
//     * 取消收藏
//     */
//    public function CancelCollection()
//    {
//        $user_id = OnlineUtils::getUserIdBySid();
//        $line_id = input('post.line_id');
//        $cancel = Db::name('collection')->where(['line_id'=>$line_id,'user_id'=>$user_id])->delete();
//        if(  $cancel ){
//            return json_code('200','success');
//        }else{
//            return json_code('402','fail');
//        }
//
//    }

    /**
     * @return array
     * 我的收藏
     */
    public function MyCollection()
    {
        $user_id = OnlineUtils::getUserIdBySid();
        $data = Db::name('collection')->alias('c')->join('line l','c.line_id = l.id','left')
            ->field('c.line_id,c.user_id,l.title,l.cover,l.price')
            ->where(['c.user_id'=>$user_id,'c.status'=>1])->select();
        return json_code('200','success',$data);

    }


}